import request from '@/utils/request'

// 查询地块数据列表
export function getPlotList(query) {
  // 模拟地块数据，均在山东省境内
  const mockData = {
    code: 200,
    msg: '操作成功',
    data: [
      {
        id: 1,
        name: '寿光蔬菜种植基地',
        address: '山东省潍坊市寿光市洛城街道',
        crop: '番茄、黄瓜',
        area: 125.6, // 面积（平方米）
        unit: 'm²',
        displayArea: '125.60',
        coordinates: [
          [36.8850, 118.7400],
          [36.8860, 118.7420],
          [36.8840, 118.7430],
          [36.8830, 118.7410],
          [36.8850, 118.7400]
        ],
        createTime: '2024-01-15 10:30:00',
        updateTime: '2024-01-15 10:30:00'
      },
      {
        id: 2,
        name: '章丘大葱种植园',
        address: '山东省济南市章丘区绣惠街道',
        crop: '大葱',
        area: 89.3,
        unit: 'm²',
        displayArea: '89.30',
        coordinates: [
          [36.7200, 117.5300],
          [36.7210, 117.5310],
          [36.7205, 117.5320],
          [36.7195, 117.5315],
          [36.7200, 117.5300]
        ],
        createTime: '2024-01-16 14:20:00',
        updateTime: '2024-01-16 14:20:00'
      },
      {
        id: 3,
        name: '烟台苹果种植基地',
        address: '山东省烟台市栖霞市桃村镇',
        crop: '红富士苹果',
        area: 256.8,
        unit: 'm²',
        displayArea: '256.80',
        coordinates: [
          [37.3000, 120.8300],
          [37.3015, 120.8320],
          [37.3005, 120.8335],
          [37.2990, 120.8325],
          [37.2995, 120.8310],
          [37.3000, 120.8300]
        ],
        createTime: '2024-01-17 09:15:00',
        updateTime: '2024-01-17 09:15:00'
      },
      {
        id: 4,
        name: '金乡大蒜种植基地',
        address: '山东省济宁市金乡县鸡黍镇',
        crop: '白皮大蒜',
        area: 178.5,
        unit: 'm²',
        displayArea: '178.50',
        coordinates: [
          [35.0700, 116.3200],
          [35.0715, 116.3215],
          [35.0710, 116.3230],
          [35.0695, 116.3225],
          [35.0690, 116.3210],
          [35.0700, 116.3200]
        ],
        createTime: '2024-01-18 16:45:00',
        updateTime: '2024-01-18 16:45:00'
      },
      {
        id: 5,
        name: '临沂花生种植园',
        address: '山东省临沂市沂南县双堠镇',
        crop: '花生',
        area: 145.2,
        unit: 'm²',
        displayArea: '145.20',
        coordinates: [
          [35.5500, 118.4600],
          [35.5510, 118.4615],
          [35.5505, 118.4625],
          [35.5495, 118.4620],
          [35.5490, 118.4605],
          [35.5500, 118.4600]
        ],
        createTime: '2024-01-19 11:30:00',
        updateTime: '2024-01-19 11:30:00'
      }
    ]
  };
  return Promise.resolve(mockData);
  // 实际请求代码（注释掉）
  // return request({
  //   url: '/map/plot/list',
  //   method: 'get',
  //   params: query
  // })
}

// 新增地块数据
export function addPlot(data) {
  // 模拟新增成功响应
  const mockResponse = {
    code: 200,
    msg: '新增地块成功',
    data: {
      id: Date.now(), // 使用时间戳作为模拟ID
      ...data,
      createTime: new Date().toLocaleString('zh-CN'),
      updateTime: new Date().toLocaleString('zh-CN')
    }
  };
  return Promise.resolve(mockResponse);
  // 实际请求代码（注释掉）
  // return request({
  //   url: '/map/plot',
  //   method: 'post',
  //   data: data
  // })
}

// 更新地块数据
export function updatePlot(data) {
  // 模拟更新成功响应
  const mockResponse = {
    code: 200,
    msg: '更新地块成功',
    data: {
      ...data,
      updateTime: new Date().toLocaleString('zh-CN')
    }
  };
  return Promise.resolve(mockResponse);
  // 实际请求代码（注释掉）
  // return request({
  //   url: '/map/plot',
  //   method: 'put',
  //   data: data
  // })
}

// 删除地块数据
export function deletePlot(id) {
  // 模拟删除成功响应
  const mockResponse = {
    code: 200,
    msg: '删除地块成功'
  };
  return Promise.resolve(mockResponse);
  // 实际请求代码（注释掉）
  // return request({
  //   url: `/map/plot/${id}`,
  //   method: 'delete'
  // })
}

// 根据ID查询地块详情
export function getPlotById(id) {
  // 模拟查询成功响应
  const mockResponse = {
    code: 200,
    msg: '查询成功',
    data: {
      id: id,
      name: '示例地块',
      address: '山东省示例地址',
      crop: '示例作物',
      area: 100.0,
      unit: 'm²',
      displayArea: '100.00',
      coordinates: [],
      createTime: new Date().toLocaleString('zh-CN'),
      updateTime: new Date().toLocaleString('zh-CN')
    }
  };
  return Promise.resolve(mockResponse);
  // 实际请求代码（注释掉）
  // return request({
  //   url: `/map/plot/${id}`,
  //   method: 'get'
  // })
}